package com.chen.authority.model.dto;

import com.chen.authority.common.model.Dto;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;

import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;

/**
 * 部门 数据传输对象
 *
 * @author chengy
 * @date 2022/11/11
 */
@Data
@EqualsAndHashCode(callSuper = true)
public class DepartmentDto extends Dto {

    /**
     * 父部门id
     */
    @NotNull(message = "父部门id不能为空")
    @ApiModelProperty(value = "父部门id", required = true)
    private Integer parentId;

    /**
     * 祖级列表
     */
    @ApiModelProperty("祖级列表")
    private String ancestors;

    /**
     * 名称
     */
    @NotBlank(message = "名称不能为空")
    @ApiModelProperty(value = "名称", required = true)
    private String name;

    /**
     * 类型（0总公司 1分公司 2部门）
     */
    @NotNull(message = "类型不能为空")
    @ApiModelProperty(value = "类型（0总公司 1分公司 2部门）", required = true)
    private Integer type;

    /**
     * 排序
     */
    @NotNull(message = "排序不能为空")
    @ApiModelProperty(value = "排序", required = true)
    private Integer sort;

    /**
     * 状态（0正常 1停用）
     */
    @NotNull(message = "状态不能为空")
    @ApiModelProperty(value = "状态（0正常 1停用）", required = true)
    private Integer status;

}